/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package forense.dbo;

import forense.classes.ArchivoLogger;
import forense.entities.Bateria;
import forense.entities.Cargador;
import forense.entities.Case;
import forense.entities.Device;
import forense.entities.Evidence;
import forense.entities.Archivos;
import forense.entities.Propiedades;
import forense.entities.SdCard;
import forense.entities.SimCard;
import forense.entities.Team;
import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;

/**
 *
 * @author Kate
 */
public class ConexionBD {

    private final static ArchivoLogger log = new ArchivoLogger(ConexionBD.class);

    public static void main(String[] args) throws SQLException, ClassNotFoundException {
        ConexionBD objCon = new ConexionBD();
        objCon.getConection();
        System.out.println("EXITO");
    }

    public Connection getConection() {
        Connection con = null;
        try {
            String url = "jdbc:mysql://localhost:3306/";
            String db = "forense";
            String driver = "com.mysql.jdbc.Driver";
            Class.forName(driver);
            con = DriverManager.getConnection(url + db, "root", "");
            System.out.println("Conexion realizada");
            log.info("Conexión realizada");
        } catch (Exception e) {
            System.out.println("Error en la conexión" + e);
            log.error("Fallo conexión" + e);
        }
        return con;
    }

    public boolean guardarCaso(Case c) {
        boolean op = false;
        Connection dbcon = getConection();
        try {
            String codCaso = c.getCaso();
            Timestamp fecha = new Timestamp(c.getFechaSolicitud());
            ResultSet rs;
            Statement st = dbcon.createStatement();
            /////
            rs = st.executeQuery("SELECT CODIGOCASO FROM caso_de_estudio where CODIGOCASO='" + codCaso + "'");
            if (rs.next() == true) {
                codCaso = rs.getString("CODIGOCASO");
                System.out.println("El caso de estudio " + codCaso + "ya existe");
                op = true;
            } else {
                dbcon.createStatement().executeUpdate("INSERT into caso_de_estudio VALUES("
                        + "'" + c.getCaso() + "',"
                        + "'" + c.getFechaSolicitud() + "',"
                        + "'" + c.getSolicitante() + "',"
                        + "'" + c.getDescripcion() + "',"
                        + "'" + c.getObjetivos() + "',"
                        + "'" + c.getAlcance() + "')");
                op = true;
                //GuardarEquipo
                //GuardarEvidencia
            }
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public boolean guardarPersonal(String codCase, Team c) {

        boolean op = false;
        Connection dbcon = getConection();
        try {
            ResultSet rs;
            Statement st = dbcon.createStatement();
            /////
            dbcon.createStatement().executeUpdate("INSERT INTO `forense`.`personal` (`IDENTIFICACION`, `CODIGOCASO`, `NOMBRES`, `APELLIDOS`, `ROL`) VALUES("
                    + "'" + c.getIdentificacion() + "',"
                    + "'" + codCase + "',"
                    + "'" + c.getNombre() + "',"
                    + "'" + c.getApellidos() + "',"
                    + "'" + c.getRol() + "')");
            op = true;
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public boolean guardarEvidencia(String codCase, Evidence e) {
        boolean op = false;
        Connection dbcon = getConection();
        try {
            ResultSet rs;
            Statement st = dbcon.createStatement();
            dbcon.createStatement().executeUpdate("INSERT INTO `forense`.`evidencia` (`CODIGOEVIDENCIA`, `CODIGOCASO`, `FECHAHORAINCAUTACION`, `LUGARINCAUTACION`,`OBSERVACIONES`) VALUES("
                    + "'" + e.getCodEvidencia() + "',"
                    + "'" + codCase + "',"
                    + "'" + e.getFechaIncautacion() + "',"
                    + "'" + e.getLugarIncautacion() + "',"
                    + "'" + e.getObservaciones() + "')");
            op = true;
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public boolean guardarDispositivo(String codEvidencia, Device d) {

        boolean op = false;
        Connection dbcon = getConection();

        try {
            ResultSet rs;
            //Statement st = dbcon.createStatement();
            PreparedStatement stat = dbcon.prepareStatement("INSERT INTO `dispositivo`(`CODIGOETIQUETADISPOSITIVO`, `CODIGOEVIDENCIA`, `ESTADO`, "
                    + "`BLOQUEADO`, `PANTALLA`, `FCC_ID`, `IC`, `ESPACIOALMACENAMIENTO`, `SERVICIOSCONEXION`, `MODOVUELO`, `FECHARECEPCION`, "
                    + "`TIPO`, `BATERIAREMOVIBLE`, `CARGADOR`, `IMAGENES`, `VIDEOS`, `CAMARA`) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
            stat.setString(1, d.getCodEtiqueta());
            stat.setString(2, codEvidencia);
            stat.setString(3, d.getEstado());
            stat.setString(4, d.getBloqueado());
            stat.setString(5, d.getCaracPantalla());
            stat.setString(6, d.getFcc_id());
            stat.setString(7, d.getIc());
            stat.setString(8, d.getEspacio());
            stat.setString(9, d.getServicios_conexion());
            stat.setString(10, d.getModoVuelo());
            stat.setLong(11, d.getFechaRecepcion());
            stat.setString(12, d.getTipo());
            stat.setString(13, d.getBateria());
            stat.setString(14, d.getCargador());
            stat.setString(15, d.getCam_imagenes());
            stat.setString(16, d.getCam_videos());
            stat.setString(17, d.getCamara());
            stat.executeUpdate();
            /////
//            dbcon.createStatement().executeUpdate("INSERT INTO `dispositivo`(`CODIGOETIQUETADISPOSITIVO`, `CODIGOEVIDENCIA`, `ESTADO`, `BLOQUEADO`, `PANTALLA`, `FCC_ID`, `IC`, `ESPACIOALMACENAMIENTO`, `SERVICIOSCONEXION`, `MODOVUELO`, `FECHARECEPCION`, `TIPO`, `BATERIAREMOVIBLE`, `CARGADOR`, `IMAGENES`, `VIDEOS`, `CAMARA`) VALUES("
//                    + "'" + d.getCodEtiqueta() + "',"
//                    + "'" + codEvidencia + "',"
//                    + "'" + d.getEstado() + "',"
//                    + "'" + d.getBloqueado() + "',"
//                    + "'" + d.getCaracPantalla() + "',"
//                    + "'" + d.getFcc_id() + "',"
//                    + "'" + d.getIc() + "',"
//                    + "'" + d.getEspacio() + "',"
//                    + "'" + d.getServicios_conexion() + "',"
//                    + "'" + d.getModoVuelo() + "',"
//                    + "'"+ d.getFechaRecepción() + "',"
//                    + "'" + d.getTipo() + "',"
//                    + "'" + d.getBateria() + "',"
//                    + "'" + d.getCargador() + "',"
//                    + "'" + d.getCam_imagenes() + "',"
//                    + "'" + d.getCam_videos() + "',"
//                    + "'" + d.getCamara() + "')");

            op = true;
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public boolean guardarDisPropiedades(Propiedades p, String codEtiquetaDis) {
        String codPropiedades = codEtiquetaDis + "-" + p.getSerialDispositivo();
        boolean op = false;
        Connection dbcon = getConection();
        String dispositivo = p.getSerialDispositivo();
        try {
            ResultSet rs;
            Statement st = dbcon.createStatement();
            /////
            rs = st.executeQuery("SELECT COD_PROPIEDADES FROM propiedades where COD_PROPIEDADES='" + codPropiedades + "'");
            if (rs.next() == true) {
                dispositivo = rs.getString("COD_PROPIEDADES");
                System.out.println("El dispositivo " + dispositivo + "ya ha sido ingresado");
                op = true;
            } else {
                dbcon.createStatement().executeUpdate("INSERT into propiedades VALUES("
                        + "'" + codPropiedades + "',"
                        + "'" + p.getSerialDispositivo() + "',"
                        + "'" + codEtiquetaDis + "',"
                        + "'" + p.getTipo() + "',"
                        + "'" + p.getSistemaOperativo() + "',"
                        + "'" + p.getVersionOs() + "',"
                        + "'" + p.getLenguaje() + "',"
                        + "'" + p.getMarca() + "',"
                        + "'" + p.getModelo() + "',"
                        + "'" + p.getFabricante() + "',"
                        + "'" + p.getProcesador() + "',"
                        + "'" + p.getKernel() + "',"
                        + "'" + p.getCompilacion() + "',"
                        + "'" + p.getSerialRadio() + "',"
                        + "'" + p.getComposicion() + "',"
                        + "'" + p.getTamanio() + "')");
                op = true;
            }
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public boolean guardarBateria(String codEtiquetaDis, Bateria b) {
        boolean op = false;
        Connection dbcon = getConection();
        try {
            ResultSet rs;
            Statement st = dbcon.createStatement();
            /////
            dbcon.createStatement().executeUpdate("INSERT into bateria VALUES("
                    + "'" + b.getSerialBateria() + "',"
                    + "'" + codEtiquetaDis + "',"
                    + "'" + b.getFabricante() + "',"
                    + "'" + b.getVoltaje() + "')");
            op = true;
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public boolean guardarCargador(String codEtiquetaDis, Cargador c) {
        boolean op = false;
        Connection dbcon = getConection();
        try {
            ResultSet rs;
            Statement st = dbcon.createStatement();
            /////
            dbcon.createStatement().executeUpdate("INSERT into cargador VALUES("
                    + "'" + c.getCod() + "',"
                    + "'" + codEtiquetaDis + "',"
                    + "'" + c.getSerialCargador() + "',"
                    + "'" + c.getMarca() + "',"
                    + "'" + c.getModelo() + "',"
                    + "'" + c.getInput() + "',"
                    + "'" + c.getOutput() + "',"
                    + "'" + c.getFrecuencia() + "',"
                    + "'" + c.getCodCable() + "',"
                    + "'" + c.getCable() + "')");
            op = true;
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public boolean guardarSD(String codEtiquetaDis, SdCard sd) {
        String codSD = codEtiquetaDis + "-" + sd.getSerial();
        boolean op = false;
        Connection dbcon = getConection();
        try {
            ResultSet rs;
            Statement st = dbcon.createStatement();
            /////
            dbcon.createStatement().executeUpdate("INSERT into tarjeta_externa VALUES("
                    + "'" + codSD + "',"
                    + "'" + sd.getSerial() + "',"
                    + "'" + codEtiquetaDis + "',"
                    + "'" + sd.getEsp_almacenamiento() + "',"
                    + "'" + sd.getEsp_disponible() + "')");
            op = true;
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public boolean guardarSIM(String codEtiquetaDis, SimCard sim) {
        String codSim = codEtiquetaDis + "-" + sim.getIcc();
        boolean op = false;
        Connection dbcon = getConection();
        try {
            ResultSet rs;
            Statement st = dbcon.createStatement();
            /////
            dbcon.createStatement().executeUpdate("INSERT into sim_card VALUES("
                    + "'" + codSim + "',"
                    + "'" + sim.getIcc() + "',"
                    + "'" + codEtiquetaDis + "',"
                    + "'" + sim.getOperadora() + "',"
                    + "'" + sim.getFono() + "',"
                    + "'" + sim.getPin() + "',"
                    + "'" + sim.getPuk() + "')");
            op = true;
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public boolean guardarArchivos(Archivos f, String idDispositivo) {
        //id archivos codcaso+codevicencia+
        String dispositivo;
        boolean op = false;
        Connection dbcon = getConection();
        try {
            ResultSet rs;
            Statement st = dbcon.createStatement();
            rs = st.executeQuery("SELECT * FROM `archivos` WHERE `ID_ARCHIVOS`='" + idDispositivo + "'");
            if (rs.next() == true) {
                dispositivo = rs.getString("ID_ARCHIVOS");
                System.out.println("El archivo" + dispositivo + "ya ha sido ingresado");
                op = true;
            } else {
                /////
                dbcon.createStatement().executeUpdate("INSERT into archivos VALUES("
                        + "'" + f.getIdArchivos() + "',"
                        + "'" + f.getCodCaso() + "',"
                        + "'" + f.getCodEvidencia() + "',"
                        + "'" + f.getCodEtiquetaDis() + "',"
                        + "'" + f.getNombreArchivo() + "',"
                        + "'" + f.getRutaArchivos() + "')");
                op = true;
            }
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public boolean obtDispositivoTablaCaso(String codEvidencia) {
        boolean op = false;
        Connection dbcon = getConection();
        try {
            ResultSet rs = null;
            Statement st = dbcon.createStatement();
            /////
            dbcon.createStatement().executeQuery("select `dispositivo`.`CODIGOEVIDENCIA`. , `propiedades`.`CODIGOETIQUETADISPOSITIVO`, `propiedades`.`TIPO`, `propiedades`.`SERIAL`, `propiedades`.`MARCA`, `propiedades`.`MODELO` from `propiedades` join `dispositivo` on `propiedades`.`CODIGOETIQUETADISPOSITIVO`= `dispositivo`.`CODIGOETIQUETADISPOSITIVO` WHERE `dispositivo`.`CODIGOETIQUETADISPOSITIVO`='" + codEvidencia + "';");
            ResultSetMetaData rsMd = rs.getMetaData();
            while (rs.next()) {
                Object[] datos = new Object[6];
                datos[0] = rs.getString(1);
                datos[1] = rs.getString(2);
                datos[2] = rs.getString(3);
                datos[3] = rs.getString(4);
                datos[4] = rs.getString(5);
                datos[5] = rs.getString(6);
            }
            op = true;
            /////
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return op;
    }

    public ArrayList<Case> getCasos() {
        ArrayList<Case> listaCasos = new ArrayList<Case>();
        try {
            Statement st = this.getConection().createStatement();
            ResultSet rs = st.executeQuery("select * from caso_de_estudio");
            Case caso = null;
            while (rs.next()) {
                caso = new Case(rs.getString(1),
                        rs.getLong(2),
                        rs.getString(3),
                        rs.getString(4),
                        rs.getString(5),
                        rs.getString(6));
                listaCasos.add(caso);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return listaCasos;
    }

    public ArrayList<Device> getDevices(String caso) {
        ArrayList<Device> listaDispositivos = new ArrayList<Device>();
        try {
            Statement st = this.getConection().createStatement();
            //SELECT * FROM `dispositivo` JOIN `evidencia` ON `dispositivo`.`CODIGOEVIDENCIA` = `evidencia`.`CODIGOEVIDENCIA` WHERE `evidencia`.`CODIGOCASO`= 'C011'
            //ResultSet rs = st.executeQuery("SELECT * FROM `dispositivo` JOIN `evidencia` ON `dispositivo`.`CODIGOEVIDENCIA` = `evidencia`.`CODIGOEVIDENCIA` JOIN `caso_de_estudio` ON `caso_de_estudio`.`CODIGOCASO`= `evidencia`.`CODIGOCASO` WHERE `evidencia`.`CODIGOCASO`= '"+caso+"';");
            ResultSet rs = st.executeQuery("SELECT * FROM `dispositivo` JOIN `evidencia` ON `dispositivo`.`CODIGOEVIDENCIA` = `evidencia`.`CODIGOEVIDENCIA` WHERE `evidencia`.`CODIGOCASO`='" + caso + "';");
            //para tabla 
            Device dis = null;
            while (rs.next()) {
                dis = new Device(
                        rs.getString(2),
                        rs.getString(1),
                        rs.getLong(11),
                        rs.getString(12),
                        rs.getString(3),
                        rs.getString(4),
                        rs.getString(5),
                        rs.getString(6),
                        rs.getString(7),
                        rs.getString(8),
                        rs.getString(10),
                        rs.getString(9),
                        rs.getString(17),
                        rs.getString(15),
                        rs.getString(16),
                        rs.getString(14),
                        rs.getString(13));
                listaDispositivos.add(dis);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return listaDispositivos;
    }

    public ArrayList<Device> getDatosDevices(String caso) {
        ArrayList<Device> listaDispositivos = new ArrayList<Device>();
        try {
            Statement st = this.getConection().createStatement();
            //SELECT * FROM `dispositivo` JOIN `evidencia` ON `dispositivo`.`CODIGOEVIDENCIA` = `evidencia`.`CODIGOEVIDENCIA` WHERE `evidencia`.`CODIGOCASO`= 'C011'
            //ResultSet rs = st.executeQuery("SELECT * FROM `dispositivo` JOIN `evidencia` ON `dispositivo`.`CODIGOEVIDENCIA` = `evidencia`.`CODIGOEVIDENCIA` JOIN `caso_de_estudio` ON `caso_de_estudio`.`CODIGOCASO`= `evidencia`.`CODIGOCASO` WHERE `evidencia`.`CODIGOCASO`= '"+caso+"';");
            ResultSet rs = st.executeQuery("SELECT * FROM `dispositivo` JOIN `evidencia` ON `dispositivo`.`CODIGOEVIDENCIA` = `evidencia`.`CODIGOEVIDENCIA` WHERE `evidencia`.`CODIGOCASO`='" + caso + "';");
            //para tabla 
            Device dis = null;
            while (rs.next()) {
                dis = new Device(
                        rs.getString(2),
                        rs.getString(1),
                        rs.getLong(11),
                        rs.getString(12),
                        rs.getString(3),
                        rs.getString(4),
                        rs.getString(5),
                        rs.getString(6),
                        rs.getString(7),
                        rs.getString(8),
                        rs.getString(10),
                        rs.getString(9),
                        rs.getString(17),
                        rs.getString(15),
                        rs.getString(16),
                        rs.getString(14),
                        rs.getString(13));
                listaDispositivos.add(dis);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return listaDispositivos;
    }

    public ArrayList<Evidence> getEvidence(String evidencia) {
        ArrayList<Evidence> listaEvidencia = new ArrayList<Evidence>();
        try {
            Statement st = this.getConection().createStatement();
            ResultSet rs = st.executeQuery("SELECT * FROM `evidencia` WHERE `CODIGOCASO`= '" + evidencia + "';");
            //para tabla caso
            Evidence dis = null;
            long fecha;
            SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd");
            Date day = null;
            while (rs.next()) {
                dis = new Evidence(
                        rs.getString(1),
                        rs.getString(2),
                        rs.getLong(3),
                        rs.getString(4),
                        rs.getString(5));
                listaEvidencia.add(dis);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return listaEvidencia;
    }

    public ArrayList<Evidence> getDatosEvidence(String evidencia) {
        ArrayList<Evidence> listaEvidencia = new ArrayList<Evidence>();
        try {
            Statement st = this.getConection().createStatement();
            ResultSet rs = st.executeQuery("SELECT * FROM `evidencia` WHERE `CODIGOEVIDENCIA`= '" + evidencia + "';");
            //para tabla caso
            Evidence dis = null;
            long fecha;
            SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd");
            Date day = null;
            while (rs.next()) {
                dis = new Evidence(
                        rs.getString(1),
                        rs.getString(2),
                        rs.getLong(3),
                        rs.getString(4),
                        rs.getString(5));
                listaEvidencia.add(dis);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return listaEvidencia;
    }

    public ArrayList<Archivos> getFiles(String caso) {
        ArrayList<Archivos> listaArchivos = new ArrayList<>();
        try {
            Statement st = this.getConection().createStatement();
            ResultSet rs = st.executeQuery("SELECT * FROM `archivos` JOIN `dispositivo` ON `archivos`.`CODIGOETIQUETADISPOSITIVO`= `dispositivo`.`CODIGOETIQUETADISPOSITIVO` JOIN `evidencia` ON `dispositivo`.`CODIGOEVIDENCIA` = `evidencia`.`CODIGOEVIDENCIA` WHERE `evidencia`.`CODIGOCASO` = '" + caso + "'");
            //para tabla caso
            Archivos dis = null;
            while (rs.next()) {
                dis = new Archivos(
                        rs.getString(1),
                        rs.getString(2),
                        rs.getString(3),
                        rs.getString(4),
                        rs.getString(5),
                        rs.getString(6));
                listaArchivos.add(dis);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return listaArchivos;
    }

    public ArrayList<Team> getEquipo(String caso) {
        ArrayList<Team> listaArchivos = new ArrayList<Team>();
        try {
            Statement st = this.getConection().createStatement();
            ResultSet rs = st.executeQuery("SELECT * FROM personal  where CODIGOCASO= '" + caso + "';");
            //para tabla caso
            Team dis = null;
            while (rs.next()) {
                dis = new Team(
                        rs.getString(1),
                        rs.getString(3),
                        rs.getString(4),
                        rs.getString(5));
                listaArchivos.add(dis);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return listaArchivos;
    }

    public ArrayList<Archivos> getArchivos(String dispositivo) {
        ArrayList<Archivos> listaArchivos = new ArrayList<>();
        try {
            Statement st = this.getConection().createStatement();
            ResultSet rs = st.executeQuery("SELECT * FROM `archivos` WHERE CODIGOETIQUETADISPOSITIVO = '" + dispositivo + "'");
            //para tabla caso
            Archivos dis = null;
            while (rs.next()) {
                dis = new Archivos(
                        rs.getString(1),
                        rs.getString(2),
                        rs.getString(3),
                        rs.getString(4),
                        rs.getString(5),
                        rs.getString(6));
                listaArchivos.add(dis);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return listaArchivos;
    }

    public ArrayList<Archivos> getDatosFiles(String archivo, String dispositivo) {
        ArrayList<Archivos> listaArchivos = new ArrayList<>();
        try {
            Statement st = this.getConection().createStatement();
            ResultSet rs = st.executeQuery("SELECT * FROM `archivos` WHERE ID_ARCHIVOS = '" + archivo + "' AND CODIGOETIQUETADISPOSITIVO=' " + dispositivo + "';");
            //para tabla caso
            Archivos dis = null;
            while (rs.next()) {
                dis = new Archivos(
                        rs.getString(1),
                        rs.getString(2),
                        rs.getString(3),
                        rs.getString(4),
                        rs.getString(5),
                        rs.getString(6));
                listaArchivos.add(dis);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return listaArchivos;
    }

    public Object[] obtPersonal(String caso) {
        Object[]datos = null;
        try {
            Statement st = this.getConection().createStatement();
            ResultSet rs = st.executeQuery("SELECT * FROM personal where CODIGOCASO= '" + caso + "';");
            //para tabla caso
            Team dis = null;
            while (rs.next()) {
                datos = new Object[4];
                datos[0] = rs.getString(1);
                datos[1] = rs.getString(3);
                datos[2] = rs.getString(4);
                datos[3] = rs.getString(5);
               return datos;
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return datos;
    }
}
